package cn.tedu.eb_film.service;

import cn.tedu.eb_film.pojo.dto.EmployeeAddNewDTO;
import cn.tedu.eb_film.pojo.dto.EmployeeUpdateDTO;
import cn.tedu.eb_film.pojo.dto.UserAddNewDTO;
import cn.tedu.eb_film.pojo.dto.UserUpdateDTO;
import cn.tedu.eb_film.pojo.vo.*;

import java.util.List;

/**
 * 员工表服务接口
 *
 * @author zzzzc
 * @since 2023-03-18 18:38:25
 */
public interface EmployeeService {

    String ENABLE_TEXT[] = {"禁用","启用"};
    /**
     * 新增数据
     *
     * @param employeeAddNewDTO 实例对象
     * @return 实例对象
     */
    void addNew(EmployeeAddNewDTO employeeAddNewDTO);

    /**
     * 删除员工
     * @param id 尝试删除的员工数据的ID
     */
    void delete(Long id);

    void setEnable(Long id);
    void setDisable(Long id);


    /**
     * 修改员工数据
     * @param id 被修改的员工数据的ID
     * @param employeeUpdateDTO 员工的新数据
     */
    void updateInfoById(Long id, EmployeeUpdateDTO employeeUpdateDTO);
    /**
     * 根据id查询员工数据详情
     *
     * @param id 员工id
     * @return 匹配的员工数据详情，如果没有匹配的数据，则返回null
     */
    EmployeeStandardVO getStandardById(Long id);

    /**
     * 查询员工数据列表
     *
     * @return 员工数据列表
     */
    List<EmployeeListItemVO> list();

    List<EmployeeLikeNameVO>nameList(String likeName);



}
